//#define  _CRT_SECURE_NO_WARNINGS
//#include"sort.h"
//void CountSort(int* a, int n) {
//	int min = a[0];
//	int max = a[0];
//	for (int i = 1; i < n; i++) {
//		if (a[i] > max) {
//			max = a[i];
//		}
//		if(a[i]<min){
//			min = a[i];
//		}
//	}
//	int range = max - min + 1;
//	int* CountA = (int*)malloc(sizeof(int) * range);
//	assert(CountA);
//	memset(CountA, 0, sizeof(int) * range);
//	for (int i = 0; i < n; i++) {
//		CountA[a[i] - min]++;
//	}
//	int j = 0;
//	for (int i = 0; i < range; i++) {
//		while (CountA[i]--) {
//			a[j++] = i+min;
//		}
//	}
//}
//int main() {
//	int a[] = { 2,3,4,1,5,6,8,2,3,1,4,1,4,1,1,1 };
//	int n = sizeof(a) / sizeof(a[0]);
//	CountSort(a, n);
//	PrintArray(a, n);
//
//	return 0;
//}